Method and apparatus for triggering radio link control packet discard and  radio link control re-establishment

ABSTRACT

A method and apparatus for triggering radio link control (RLC) re-establishment and/or protocol data unit (PDU) discard are disclosed. An RLC entity maintains a state variable for counting a total number of transmissions and/or retransmissions of an RLC PDU and its PDU segments. If the state variable reaches a threshold, the RLC entity initiates RLC re-establishment and/or discards the RLC PDU and PDU segments. The state variable may be incremented each time a negative acknowledgement is received for at least a portion of the RLC PDU or when a retransmission is considered for the RLC PDU or a portion of the RLC PDU. The RLC entity may increase a state variable proportionate to a retransmitted data size. The RLC entity may maintain separate state variables for the RLC PDU and PDU segments and counts the number of transmissions and/or retransmissions for the RLC PDU and the PDU segments.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. provisional application No.61/012,731 filed Dec. 10, 2007, which is incorporated by reference as iffully set forth.

FIELD OF INVENTION

This application is related to wireless communications.

BACKGROUND

FIG. 1 shows a long term evolution (LTE) user-plane protocol stack. Theuser-plane includes a packet data convergence protocol (PDCP) entity, aradio link control (RLC) entity and a medium access control (MAC)entity.

The main functions of the RLC entity include transfer of upper layerprotocol data units (PDUs) supporting acknowledged mode (AM),unacknowledged mode (UM), and transparent mode (TM) data transfer, errorcorrection through automatic repeat request (ARQ), segmentationaccording to the size of the transport block (TB), re-segmentation ofRLC PDUs that need to be retransmitted, concatenation of RLC servicedata units (SDUs) for the same radio bearer, in-sequence delivery ofupper layer PDUs except at handover in the uplink, duplicate detection,protocol error detection and recovery, flow control between an evolvedNode B (eNB) and a wireless transmit/receive unit (WTRU), SDU discard,RLC reset, or the like.

An RLC SDU may be segmented if the RLC SDU does not fit entirely intothe TB. The RLC SDU may be segmented into variable sized RLC PDUs. If aretransmitted PDU does not fit entirely into the new TB used forretransmission, the RLC PDU may be re-segmented. The number ofre-segmentation is not limited.

According to 3GPP TS 36.322 V1.2.0, the evolved universal terrestrialradio access network (E-UTRAN) RLC entity may perform SDU discard basedon a notification from the PDCP entity above it, as opposed to havingthe RLC entity have its own SDU timer-based discard mechanism like inthe Release 6 UTRAN RLC. According to 3GPP TS 36.322 V1.2.0, in E-UTRAN,a new re-segmentation functionality will be supported in addition tosupporting segmentation. In addition to segmentation and reassembly ofRLC SDUs, re-segmentation and reassembly of RLC PDUs will be supported(at least for AM data transfer).

FIG. 2 shows segmentation and re-segmentation of an RLC PDU. An RLC SDUmay be segmented into RLC PDUs. Each RLC PDU is identified by a sequencenumber (SN) that is assigned on a per-RLC PDU basis, (i.e., a PDU SN).The RLC PDU SN is included in the RLC header. Segmentation of the RLCSDU into RLC PDUs may be performed once and an RLC SDU may not besegmented again. Instead, re-segmentation may be performed on RLC PDUs.

An RLC PDU may be segmented into PDU segments, (i.e., sub-segments). Asshown in FIG. 2, a sub-segment may be identified by two parameters: asegment offset (SO) and a segment length (SL). The SO indicates thestarting position of the segment within the original RLC PDU, (e.g., inbytes), and the SL indicates the length (size) of the segment, (e.g., inbytes).

RLC PDU re-segmentation may be performed multiple times without a limitaccording to 3GPP TS 36.322. FIGS. 3(A) and 3(B) show two RLC PDUre-segmentations (i.e., two occurrences of re-segmentation). In FIG.3(A), the second sub-segment is larger than the first sub-segment. Thismight occur when the TB size selected by the lower layer is larger thanthe size of the first sub-segment that needs to be retransmitted. InFIG. 3(B), the second sub-segment is smaller than the first sub-segment.This might occur when the TB size selected by the lower layer is smallerthan the size of the first sub-segment that needs to be retransmitted.

In the UTRAN, the RLC AM mode performs ARQ retransmissions. One of theparameters for the ARQ mechanism is the maximum number of transmissions,MaxDAT. MaxDAT represents the upper limit for state variable VT(DAT).The state variable VT(DAT) counts the number of times that an AMD PDUhas been scheduled to be transmitted. There shall be one VT(DAT) foreach RLC AMD PDU and each shall be incremented by one every time thecorresponding AMD PDU is scheduled to be transmitted. The initial valueof VT(DAT) is 0. When VT(DAT) equals MaxDAT, either an RLC resetprocedure or an SDU discard procedure shall be initiated according tothe configuration by the upper layer.

In the E-UTRAN, it has been agreed to support the RLC SDU discardfunctionality in the PDCP entity, (e.g., timer-based discard). The PDCPentity notifies the RLC entity of a discarded SDU/PDU so that the RLCentity discards it from its buffers.

However, there is a need for an RLC PDU (and in turn RLC SDU) discardcriteria to be evaluated and implemented locally in the RLC entityitself. Such mechanism may be used to avoid protocol deadlockconditions, (e.g., indefinite retransmissions), and/or to trigger otherprocedures, such as RLC reset or re-establishment and RLC move receivewindow (MRW), and/or to support better quality of service (QoS). TheUTRAN RLC provides an MRW procedure which is a signal sent by thesending RLC entity to request the receiving RLC entity to move itsreception window, and optionally to indicate the set of discarded RLCSDUs as a result of an RLC SDU discard in the sending RLC entity.

In the UTRAN, the MaxDAT parameter was used to discard RLC PDUs based onthe number of PDU (re)transmissions, and in turn trigger either an RLCreset procedure or an RLC MRW procedure. For the E-UTRAN, thestraightforward MaxDAT parameter based on the number of PDU(re)transmissions may not be used due to the introduction of the newfunctionality of re-segmentation in the E-UTRAN, which makes thestraightforward counting of PDU (re)transmissions inappropriate as adiscard criterion for RLC PDUs.

Therefore, it would be desirable to provide methods and criteria todiscard an RLC PDU, and/or in turn the corresponding RLC SDU(s), and/orto trigger other procedures, such as RLC reset or re-establishment.

SUMMARY

A method and apparatus for triggering RLC packet discard and/or RLCre-establishment are disclosed. An RLC entity maintains a state variablefor counting a total number of transmissions and/or retransmissions ofan RLC PDU and its PDU segments. If the state variable reaches, (i.e.,equal to), a predetermined threshold, the RLC entity may discard the RLCPDU and segments of the RLC PDU and/or initiate RLC re-establishment.The state variable associated with the RLC PDU may be incremented eachtime a negative acknowledgement (NACK) is received for at least aportion of the RLC PDU or when a retransmission is considered for theRLC PDU or portion of the RLC PDU. The state variable associated withthe RLC PDU may not be incremented when the RLC PDU or portion of theRLC PDU considered for retransmission is already pending retransmission.

Alternatively, the RLC entity may increase a state variableproportionate to a retransmitted data size of the RLC PDU or its PDUsegments. The state variable counts a total data size of transmissionsand/or retransmissions of the RLC PDU and its PDU segments, and if thestate variable reaches or exceeds a predetermined threshold, the RLCentity may discard at least one of the RLC PDU and segments of the RLCPDU and/or initiate RLC re-establishment.

BRIEF DESCRIPTION OF THE DRAWINGS

A more detailed understanding may be had from the following description,given by way of example in conjunction with the accompanying drawingswherein:

FIG. 1 shows a long term evolution (LTE) user-plane protocol stack;

FIG. 2 shows segmentation and re-segmentation of an RLC PDU;

FIGS. 3(A) and 3(B) show two RLC PDU re-segmentations, respectively;

FIG. 4 is a flow diagram of a process for packet discard and/or RLCre-establishment in accordance with a first embodiment;

FIG. 5 is a flow diagram of a process for packet discard and/or RLCre-establishment in accordance with a second embodiment;

FIG. 6 is a flow diagram of a process for packet discard and/or RLCre-establishment in accordance with a third embodiment; and

FIG. 7 is a flow diagram of a process for packet discard and/or RLCre-establishment in accordance with a fourth embodiment.

DETAILED DESCRIPTION

When referred to hereafter, the terminology “wireless transmit/receiveunit (WTRU)” includes but is not limited to a user equipment (UE), amobile station, a fixed or mobile subscriber unit, a pager, a cellulartelephone, a personal digital assistant (PDA), a computer, or any othertype of user device capable of operating in a wireless environment. Whenreferred to hereafter, the terminology “eNB” includes but is not limitedto a base station, a Node-B, a site controller, an access point (AP), orany other type of interfacing device capable of operating in a wirelessenvironment.

Hereinafter, both “segmented PDU” and “re-segmented PDU” refer to “PDUsegment”, and the terminology “segmented PDU”, “re-segmented PDU”, “PDUsegment”, and “sub-segment” will be used interchangeably. When referredto hereafter, the terminology “RLC re-establishment” is usedinterchangeably with the terminology “RLC reset”. When referred tohereafter, the term “packet” refers to RLC SDU, RLC PDU, or PDU segment.

In accordance with a first embodiment, the total number of transmissionsor retransmissions is calculated for a given RLC PDU and its PDUsegments to determine whether to discard such RLC PDU and/or to initiatean RLC re-establishment procedure. Alternatively, the total number oftransmission failures, (e.g., the number of NACKs), for transmitted RLCPDUs or PDU segments may be calculated.

Two parameters, MaxTotalTrans and VT(TotalTrans), are defined.MaxTotalTrans is a threshold for deciding whether an RLC PDU needs to bediscarded and/or if RLC needs to be reestablished. VT(TotalTrans) is astate variable counting the number of times an RLC PDU and its PDUsegment has been (re)transmitted or when it is considered forretransmission. One VT(TotalTrans) is generated for an associated RLCPDU and incremented every time the RLC PDU or its PDU segment is(re)transmitted or scheduled to be (re)transmitted. The initial value ofVT(TotalTrans) is 0. The VT(TotalTrans) may be initialized when thefirst time the RLC PDU is considered for retransmission.

FIG. 4 is a flow diagram of a process 400 for RLC re-establishmentand/or packet discard in accordance with the first embodiment. An RLCentity generates and transmits an RLC PDU (step 402). Subsequently, itis determined whether the RLC PDU or a portion of the RLC PDU isconsidered for retransmission (step 404). If the RLC PDU or a portion ofthe RLC PDU is not considered for retransmission, (i.e., transmission ofthe RLC PDU is successful), the process 400 ends.

If the RLC PDU or a portion of the RLC PDU is considered forretransmission, it is further determined whether the RLC PDU isconsidered for retransmission for the first time (step 406). If the RLCPDU is considered for retransmission for the first time, the variableVT(TotalTrans) associated with the RLC PDU is set to ‘0’ (step 414) andthe RLC PDU is delivered to the MAC entity for retransmission (step416).

If it is not the first time that the RLC PDU or a portion of the RLC PDUis considered for retransmission, it is further determined whether theRLC PDU or the PDU segment, or a portion of the RLC PDU or of the RLCPDU segment considered for retransmission already pendingretransmission, (e.g., the RLC PDU or a portion of the RLC PDU or PDUsegment considered for transmission is already in the retransmissionbuffer), (step 407). If so, the process 400 ends. If not, the associatedvariable VT(TotalTrans) is incremented by one for each of the RLC PDU orPDU segments, (i.e., the number of retransmissions is counted), or foreach PDU or PDU segment that is considered for retransmission, (i.e.,the number of retransmission failures is counted) (step 408).

The state variable VT(TotalTrans) may not be incremented if the RLC PDUor a portion of the RLC PDU considered for retransmission is alreadypending retransmission or if a portion of the RLC PDU is already pendingretransmission, (e.g., the RLC PDU or a portion of the RLC PDUconsidered for transmission is already in the retransmission buffer), toavoid double counting of retransmissions. It is then determined whetherthe variable VT(TotalTrans) is equal to the predetermined threshold(MaxTotalTrans) (step 410). If VT(TotalTrans) is not equal toMaxTotalTrans, the RLC PDU or a PDU segment is delivered to the MACentity for retransmission (step 416).

If VT(TotalTrans) is equal to MaxTotalTrans, one or more of thefollowing actions may be performed (step 412):

(1) Discard the corresponding RLC PDU and/or PDU segment;

(2) Discard all SDUs that have segments contained in the RLC PDU or PDUsegment;

(3) Discard all RLC PDUs or PDU segments that contain segments of thediscarded SDUs;

(4) Initiate an MRW procedure, (i.e., send an MRW to notify the peer RLCentity of the discarded PDU(s) and/or SDU(s)); and

(5) Initiate RLC reset or re-establishment.

Alternatively, the state variable VT(TotalTrans) may be initialized whenthe RLC PDU is transmitted or retransmitted for the first time.

In accordance with a second embodiment, the total “size” of thetransmitted and/or retransmitted data corresponding to a given RLC PDUis used to determine whether to discard the RLC PDU. The total number ofbytes that are transmitted and retransmitted for a particular PLC PDU iscalculated and used as a criterion for RLC PDU discard.

Two parameters, MaxBytes and VT(Bytes), are defined. MaxBytes is athreshold for deciding whether an RLC PDU needs to be discarded or not.VT(Bytes) is a state variable counting the number of bytes that aretransmitted or scheduled to be transmitted in an RLC PDU or its PDUsegments. There is one VT(Bytes) for each RLC PDU and VT(Bytes) isincremented by the size of the RLC PDU or its PDU segment every time theRLC PDU or its PDU segment(s) is (re)transmitted or scheduled to be(re)transmitted. The initial value of VT(Bytes) is zero.

It should be noted that although “bytes” are used as a unit of datasize, other units may be used to represent the data size, (e.g., numberof x bytes, number of slices or bits, or any other unit).

FIG. 5 is a flow diagram of a process 500 for RLC re-establishmentand/or packet discard in accordance with the second embodiment. An RLCentity generates an RLC PDU (step 502). An initial value of the variableVT(Bytes) for the RLC PDU is reset to ‘0’ (step 504). The RLC entityincreases the value of the corresponding VT(Bytes) by the size of theRLC PDU and the RLC PDU is transmitted (step 506). Creation and reset ofthe VT(Bytes) at the time of initial transmission of the RLC PDU atsteps 504 and 506 are optional. The state variable VT(Bytes) may not becreated at the time of initial transmission of the RLC PDU, but may becreated later if retransmission of the RLC PDU occurs or is scheduled tooccur. The state variable VT(Bytes) may be initialized to zero andincremented at the time of initial transmission (or at the time of firstretransmission if VT(Bytes) is created at the time of firstretransmission) and may be incremented at each subsequent transmission.Alternatively, the state variable VT(Bytes) may be initialized to zeroat the time of initial transmission (or at the time of firstretransmission if VT(Bytes) is created at the time of retransmission)and may be incremented at each subsequent transmission.

After transmission of the RLC PDU, it is determined whether the RLC PDUneeds to be retransmitted (step 508). If the RLC PDU does not need to beretransmitted, (e.g., by receiving an ACK), the process 500 ends. If theRLC PDU needs to be retransmitted, (e.g., by receiving a NACK), the RLCPDU may be segmented. The variable VT(Bytes) is increased by the size ofthe retransmitted RLC PDU if the RLC PDU is retransmitted withoutsegmentation or by the size of the transmitted PDU segments if the RLCPDU is segmented (step 510). For example, after transmitting an RLC PDU,the variable VT(Bytes) is increased by the size of the RLC PDU. If aNACK is received for the RLC PDU and the RLC PDU is segmented into threePDU segments, the variable VT(Bytes) is increased by the size of the RLCPDU. After transmitting the three PDU segments, if one PDU segment isNACKed and retransmitted, the variable VT(Bytes) is increased by thesize of the retransmitted PDU segment.

It is then determined whether VT(Bytes) is equal to or greater thanMaxBytes (step 512). If VT(Bytes) is smaller than MaxBytes, the RLC PDUor its PDU segments are delivered to the MAC entity for retransmissionat step 514 and the process 500 returns to step 508.

If VT(Bytes) equals to or greater than MaxBytes, one or more of thefollowing is performed (step 516):

(1) Discard the RLC PDU and its PDU segments;

(2) Discard all RLC SDUs that have segments contained in the RLC PDU orits PDU segments;

(3) Discard all RLC PDUs or PDU segments that contain segments of thediscarded RLC SDUs;

(4) Initiate an MRW procedure, (i.e., send an MRW command to notify thepeer RLC entity of the discarded PDU(s) and/or SDU(s)); and

(5) Initiate RLC reset or re-establishment.

Alternatively, the variable VT(Bytes) may be increased when the RLC PDU(or PDU segments) is scheduled for transmission or retransmission,(e.g., after the RLC entity receives a NACK but before segmenting theRLC PDU). For example, after transmitting an RLC PDU, the variableVT(Bytes) is incremented by the size of the RLC PDU. If a NACK isreceived and the RLC PDU is scheduled for retransmission, the variableVT(Bytes) is increased by the size of the RLC PDU. Assuming that the RLCPDU is segmented into three PDU segments, the three PDU segments aretransmitted. If one PDU segment is NACKed and scheduled forretransmission, the variable VT(Bytes) is increased by the size of theNACKed PDU segment.

Alternatively, the initial RLC PDU size may not be included in theVT(Bytes) and only the size of retransmitted RLC PDU or PDU segment(s)may be accumulated in the VT(Bytes).

The threshold MaxBytes may be a configurable parameter or may be derivedfrom another parameter. The threshold MaxBytes may be made flexible andbe calculated for each RLC PDU based on the initial RLC PDU size. Thisprovides better performance especially considering that the segmentationis performed in accordance with the TB size which implies a flexible PDUsize. For example, MaxBytes may be calculated using a factor, (i.e.multiple), that is multiplied by the initial size of the PDU as follows:

MaxBytes=MaxBytesFactor*(Size of Initial RLC PDU).

The MaxBytesFactor may be an IE that is configurable by an RRC entity.Such factor or multiplier may have other plausible names, such as“Transmission Size Factor” or “Retransmission Size Factor”, etc. Theadvantage of this approach is that one may control the amount of timesthat the bytes of an RLC PDU can get (re)transmitted. For example, usinga MaxBytesFactor of 3, one can ensure that the data contained in an RLCPDU will not be transmitted or (re)transmitted more than 3 times. Thefactor may be a real number or an integer.

In accordance with a third embodiment, the number of transmissions orretransmissions is counted both on a per RLC PDU and on a per PDUsegment basis. One state variable is generated for an initial RLC PDUand each PDU segment that results from the initial RLC PDU,respectively. When creating an RLC PDU, one corresponding state variableVT0(Trans) is created for the initial RLC PDU. When the RLC PDU issegmented for retransmission, one state variable VTi(Trans) is createdfor each PDU segment i.

Two parameters, MaxTrans and VTi(Trans), are defined. MaxTrans is athreshold for deciding whether an RLC PDU or a PDU segment needs to bediscarded or not. More than one threshold value may be specified, (i.e.,MaxTrans_i), depending on the level of re-segmentation. VTi(Trans) is astate variable counting the number of times an RLC PDU or a PDU segmenthas been scheduled to be transmitted or retransmitted. There is oneVTi(Trans) for each PDU or PDU segment, and each VTi(Trans) isincremented by one every time the corresponding RLC PDU or PDU segmentis scheduled to be transmitted or retransmitted. The initial value ofVTi(Trans) is 0.

FIG. 6 is a flow diagram of a process 600 for RLC re-establishmentand/or packet discard in accordance with the third embodiment. An RLCentity generates an RLC PDU (step 602). An initial value of the variableVT0(Trans) for the RLC PDU is reset to ‘0’ (step 604). The index i=0 isused to refer to the initial RLC PDU. The RLC entity increments thevalue of the corresponding VT0(Trans) by one and the RLC PDU istransmitted (step 606).

After transmission of the RLC PDU, it is determined whether the RLC PDUneeds to be retransmitted (step 608). If the RLC PDU does not need to beretransmitted, (e.g., by receiving an ACK), the process 600 ends. If theRLC PDU needs to be retransmitted, (e.g., by receiving a NACK), the RLCPDU may be segmented.

If RLC PDU is retransmitted without segmentation, the RLC entityincrements VT0(Trans) by one, and if the RLC PDU is segmented forretransmission, (i.e., if an PDU segment i is transmitted), the RLCentity updates VTi(Trans) as follows (step 610):

-   -   If the PDU segment i is transmitted for the first time, the        value of the corresponding VTi(Trans) is calculated as follows:

VTi(Trans)=VTk(Trans)+1,

where k is the index referring to the RLC PDU or PDU segment that is theparent (or the predecessor) of this PDU segment i; and

-   -   If the PDU segment i is being retransmitted, the value of the        VTi(Trans) is incremented by one.

It is then determined whether, for any index i, VTi(Trans) is equal toor greater than MaxTrans (step 612). If VTi(Trans) is smaller thanMaxTrans, the RLC PDU (or PDU segment) is delivered to the MAC entityfor retransmission at step 614 and the process 600 returns to step 608.

If VTi(Trans) equals to or greater than MaxTrans, one or more of thefollowing actions is performed (step 616):

(1) Discard the corresponding RLC PDU and/or PDU segment;

(2) Discard all SDUs that have segments contained in the RLC PDU or PDUsegment;

(3) Discard all RLC PDUs or PDU segments that contain segments of thediscarded SDUs;

(4) Initiate an MRW procedure, (i.e., send an MRW to notify the peer RLCentity of the discarded RLC PDU(s) and/or RLC SDU(s)); and

(5) Initiate RLC reset or re-establishment.

Alternatively, only the number of retransmissions may be counted, andthe initial transmission may not be counted in VT0(Trans) of an RLC PDU.The variable VTi(Trans) may be created at the time of retransmission.

Alternatively, more than one counter (state variable) may be used forthe initial RLC PDU. The counters may be allocated to calculate thenumber of (re)transmission for different data ranges within the RLC PDU,and updated whenever an RLC PDU or PDU segment that contains data thatbelongs to such data range is transmitted. For example, for each RLCPDU, (i.e., an RLC PDU that is transmitted for the first time), NVTn(Trans) variables, n=0 . . . (N−1), are initialized to ‘0’. Each ofthe N VTn(Trans) variables corresponds to one of N data ranges withinthe RLC PDU. Each time an RLC PDU or PDU segment is scheduled fortransmission or retransmission, if that RLC PDU or PDU segment containsdata belonging to the range associated with a particular VTn(Trans), theRLC entity increments the value of the corresponding VTn(Trans) by 1. Ifthe RLC PDU or PDU segment contains data associated with more than onedata range, more than one corresponding VTn's are incremented.

In accordance with a fourth embodiment, a timer, (Discard_Timer), isstarted for an RLC PDU upon its first transmission. The timer isassociated with the initial RLC PDU.

FIG. 7 is a flow diagram of a process 700 for RLC re-establishmentand/or packet discard in accordance with the fourth embodiment. An RLCentity generates an RLC PDU (step 702). Discard_Timer for the RLC PDUstarts (step 704). After transmission of the RLC PDU, it is determinedwhether the RLC PDU needs to be retransmitted (step 706). If the RLC PDUdoes not need to be retransmitted, (e.g., by receiving an ACK), theprocess 700 ends. If the RLC PDU needs to be retransmitted, (e.g., byreceiving a NACK), the RLC PDU may be segmented.

At the time of retransmission of the RLC PDU or PDU segment, it isdetermined whether the Discard_Timer has expired (step 708). If theDiscard_Timer has not expired, the RLC PDU or PDU segment is deliveredto an MAC entity for transmission at step 710 and the process 700returns to step 706. If the Discard_Timer has expired, one or more ofthe following actions is performed (step 712):

(1) Discard the corresponding RLC PDU and/or PDU segment;

(2) Discard all SDUs that have segments contained in the RLC PDU or PDUsegment;

(3) Discard all RLC PDUs or PDU segments that contain segments of thediscarded SDUs;

(4) Initiate an MRW procedure, (i.e., send an MRW to notify the peer RLCentity of the discarded PDU(s) and/or SDU(s)); and

(5) Initiate RLC reset or re-establishment.

The initial value of the Discard_Timer may be a specified value, a valuethat is related to, (e.g., the remainder of), the RLC SDU discard timer,or a value that is related to, (e.g., the remainder of), the PDCPSDU/PDU discard timer.

In the fourth embodiment, only one timer (state variable) may beassociated with the initial RLC PDU. Alternatively, a separate timer(state variable) is associated with each PDU segment and initiated whena PDU segment is transmitted. Hence, every RLC PDU or PDU segment hasits own timer that is started upon the first transmission (not theretransmission) of the PDU or PDU segment, respectively.

The parameters described above may be configured via RRC signaling.Those parameters include MaxTotalTrans, MaxTotalTrans_i, “No_discardafter MaxTotalTrans of transmissions”, “SDU (or PDU) discard afterMaxTotalTrans of transmissions”, MaxBytes, MaxBytesFactor, “No_discardafter MaxBytes of transmissions”, “SDU (or PDU) discard after MaxBytesof transmissions”, MaxTrans, MaxTrans_i, “No_discard after MaxTrans oftransmissions”, “SDU (or PDU) discard after MaxTrans of transmissions”,discard timer value, “No_discard after timer”, and “SDU (or PDU) discardafter timer”.

There may be different thresholds or timer values for different initialPDUs. The described configuration parameters are optional, and some ofthem may or may not exist. The names of the parameters may be different.For example, VT(Bytes) or MaxBytes may be named differently such asVT(DAT) or MaxDAT.

The above parameters may be specified as IEs that may be carried in anyRRC message. For example, the parameters may be carried in RRCconnection reconfiguration message, RRC connection re-establishmentmessage, or any other RRC messages. Those RRC messages may be exchangedat radio bearer (RB) setup, handover, radio link failure event, or anyother events. The IEs may be included as part of a larger IE. The IEsmay be applied on a per-Radio Bearer Basis.

The packet discard condition for the threshold may be set differently.For example, instead of “equal to or greater than”, “greater than” maybe used.

The embodiments may be applied to an RLC SDU instead of an RLC PDU. Thestate variables disclosed herein may be associated with an RLC SDUinstead of an RLC PDU. The embodiments are applicable to both RLC AM andUM.

The embodiments are applicable even if terminologies change. Forexample, if the term “PDU segment” is replaced by another term, or ifthe term “PDU” is defined to encompass any packet that is outputted fromthe RLC including “PDU segment”.

The embodiments are still applicable even if there are future changes ormodifications to the RLC sub-layer's functionality. For example, theembodiments are still applicable if SDU re-segmentation is employedinstead of PDU re-segmentation. The same embodiments for PDUre-segmentation may be applied in the case of SDU re-segmentation,(e.g., the SO will indicate the (starting) position of the segmentwithin the original SDU, (e.g., in bytes), and the SL will indicate thelength of the segment, (e.g., in bytes). The embodiments may still applyif a different mechanism is used for re-segmentation (other than thesegment offset/length approach).

Although features and elements are described above in particularcombinations, each feature or element can be used alone without theother features and elements or in various combinations with or withoutother features and elements. The methods or flow charts provided hereinmay be implemented in a computer program, software, or firmwareincorporated in a computer-readable storage medium for execution by ageneral purpose computer or a processor. Examples of computer-readablestorage mediums include a read only memory (ROM), a random access memory(RAM), a register, cache memory, semiconductor memory devices, magneticmedia such as internal hard disks and removable disks, magneto-opticalmedia, and optical media such as CD-ROM disks, and digital versatiledisks (DVDs).

Suitable processors include, by way of example, a general purposeprocessor, a special purpose processor, a conventional processor, adigital signal processor (DSP), a plurality of microprocessors, one ormore microprocessors in association with a DSP core, a controller, amicrocontroller, Application Specific Integrated Circuits (ASICs), FieldProgrammable Gate Arrays (FPGAs) circuits, any other type of integratedcircuit (IC), and/or a state machine.

A processor in association with software may be used to implement aradio frequency transceiver for use in a wireless transmit receive unit(WTRU), user equipment (UE), terminal, base station, radio networkcontroller (RNC), or any host computer. The WTRU may be used inconjunction with modules, implemented in hardware and/or software, suchas a camera, a video camera module, a videophone, a speakerphone, avibration device, a speaker, a microphone, a television transceiver, ahands free headset, a keyboard, a Bluetooth® module, a frequencymodulated (FM) radio unit, a liquid crystal display (LCD) display unit,an organic light-emitting diode (OLED) display unit, a digital musicplayer, a media player, a video game player module, an Internet browser,and/or any wireless local area network (WLAN) or Ultra Wide Band (UWB)module.

1. A method for triggering radio link control (RLC) re-establishment,the method comprising: generating an RLC protocol data unit (PDU);transmitting the RLC PDU; if one of the RLC PDU and a portion of the RLCPDU needs to be retransmitted, performing a threshold test by comparinga state variable associated with the RLC PDU with a predeterminedthreshold, the state variable being incremented when at least a portionof the RLC PDU is considered for retransmission; and initiating RLCre-establishment based on the threshold test.
 2. The method of claim 1wherein the state variable is not incremented when the RLC PDU or aportion of the RLC PDU considered for retransmission is already pendingretransmission.
 3. The method of claim 1 wherein the state variable isnot incremented when a portion of the RLC PDU or a portion of the RLCPDU considered for retransmission is already in a retransmission buffer.4. The method of claim 1 further comprising: discarding an RLC servicedata unit (SDU) at least a portion of which is contained in the RLC PDU;and discarding an RLC PDU and a PDU segment that contain at least aportion of the discarded RLC SDU.
 5. The method of claim 1 furthercomprising: performing a move receive window (MRW) procedure.
 6. Themethod of claim 1 further comprising: discarding at least one of the RLCPDU and segments of the RLC PDU.
 7. The method of claim 1 wherein thestate variable is set to zero when the RLC PDU is considered forretransmission for the first time.
 8. An apparatus for triggering radiolink control (RLC) re-establishment, the apparatus comprising: an RLCentity configured to generate an RLC protocol data unit (PDU), and ifone of the RLC PDU and a portion of the RLC PDU needs to beretransmitted, perform a threshold test by comparing a state variableassociated with the RLC PDU to a predetermined threshold and initiateRLC re-establishment based on the threshold test, wherein the statevariable is incremented when at least a portion of the RLC PDU isconsidered for retransmission.
 9. The apparatus of claim 8 wherein theRLC entity is configured not to increment the state variable when theRLC PDU or a portion of the RLC PDU considered for retransmission isalready pending retransmission.
 10. The apparatus of claim 8 wherein theRLC entity is configured not to increment the state variable when aportion of the RLC PDU or a portion of the RLC PDU considered forretransmission is already in a retransmission buffer.
 11. The apparatusof claim 8 wherein the RLC entity is configured to discard an RLCservice data unit (SDU) at least a portion of which is contained in theRLC PDU and discard an RLC PDU and a PDU segment that contains at leasta portion of the discarded RLC SDU.
 12. The apparatus of claim 8 whereinthe RLC entity is configured to perform a move receive window (MRW)procedure.
 13. The apparatus of claim 8 wherein the RLC entity isconfigured to discard at least one of the RLC PDU and segments of theRLC PDU.
 14. The apparatus of claim 8 wherein the RLC entity isconfigured to set the state variable to zero when the RLC PDU isconsidered for retransmission for the first time.
 15. A method fortriggering radio link control (RLC) re-establishment, the methodcomprising: generating an RLC protocol data unit (PDU); transmitting theRLC PDU; if at least a portion of the RLC PDU needs to be retransmitted,performing a threshold test by comparing a state variable associatedwith the RLC PDU with a predetermined threshold, the state variablebeing increased by a data size of retransmissions of the RLC PDU and itsPDU segments; and initiating RLC re-establishment based on the thresholdtest.
 16. A method for triggering radio link control (RLC)re-establishment, the method comprising: generating an RLC protocol dataunit (PDU), the RLC PDU being associated with a state variable VT0;transmitting the RLC PDU; segmenting the RLC PDU into PDU segments ifthe RLC PDU needs to be retransmitted, each of the PDU segments beingassociated with a separate state variable VTi, i=1 . . . N, N being aninteger greater than 1; if at least a portion of the RLC PDU needs to beretransmitted, performing a threshold test by comparing a state variableVTi, i32 0 . . . N with a predetermined threshold, the state variablebeing incremented by a number of retransmissions of the correspondingRLC PDU and its PDU segment; and if at least one of the state variablesVTi, i=0 . . . N, is not smaller than a predetermined threshold,initiating RLC re-establishment.
 17. A method for triggering radio linkcontrol (RLC) re-establishment, the method comprising: generating an RLCprotocol data unit (PDU); transmitting the RLC PDU; if at least aportion of the RLC PDU needs to be retransmitted, performing a thresholdtest by comparing state variables to a predetermined threshold, each ofthe state variable being associated with a specific portion of the RLCPDU and incremented each time the corresponding portion of the RLC PDUis retransmitted; and initiating RLC re-establishment based on thethreshold test.
 18. An apparatus for triggering radio link control (RLC)re-establishment, the apparatus comprising: an RLC entity configured togenerate an RLC protocol data unit (PDU), and if at least a portion ofthe RLC PDU needs to be retransmitted, perform a threshold test bycomparing a state variable associated with the RLC PDU to apredetermined threshold and initiate RLC re-establishment based on thethreshold test, wherein the state variable is increased by a data sizeof retransmissions of the RLC PDU and its PDU segments.
 19. An apparatusfor triggering radio link control (RLC) re-establishment, the apparatuscomprising: an RLC entity configured to generate an RLC protocol dataunit (PDU), the RLC PDU being associated with a state variable VT0 thatis incremented each time the RLC PDU is retransmitted, segment the RLCPDU into PDU segments if the RLC PDU needs to be retransmitted, each ofthe PDU segments being associated with a separate state variable VTi,i=1 . . . N, N being an integer greater than 1, the state variables VTi,i=1 . . . N, inheriting a value of the state variable VT0 and beingincremented each time the corresponding PDU segment is retransmitted,and if at least one of the state variables VTi, i=0 . . . N, is notsmaller than a predetermined threshold, perform RLC re-establishment.20. An apparatus for triggering radio link control (RLC)re-establishment, the apparatus comprising: an RLC entity configured togenerate an RLC protocol data unit (PDU), and if at least a portion ofthe RLC PDU needs to be retransmitted, perform a threshold test bycomparing each of a plurality of state variables to a predeterminedthreshold and initiate RLC re-establishment based on the threshold test,wherein each of the state variables is associated with a specificportion of the RLC PDU and incremented each time the correspondingportion of the RLC PDU is retransmitted.